package com.grad.webstudy.dao;

import com.grad.webstudy.model.Role;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;


@Repository
public interface RoleDao {

    /**
     * 根据角色id集合获取角色信息
     * @param roleIds
     * @return
     */
    List<Role> getRoleNameByIds(List<Integer> roleIds);


    /**
     * 查询角色id是否存在，根据参数角色id去获取对应的记录
     * @param roleIds
     * @return
     */
    List<Integer> checkRoleIds(List<Integer> roleIds);


    /**
     * 添加角色
     * @param role
     * @return
     */
    int addRole(Role role);


    /**
     * 删除角色信息
     * @param ids
     * @return
     */
    int deleteRoles(List<String> ids);


    /**
     * 更新角色信息
     * @param id
     * @param roleName
     * @param roleDesc
     * @return
     */
    int update(@Param("id") Integer id, @Param("roleName") String roleName, @Param("roleDesc") String roleDesc);

    /**
     * 查询全部角色信息
     * @return
     */
    List<Role> selectAll(String keyword);


}